home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / elk-2_0.lha / elk-2.0 / lib / xaw / porthole.d < prev    next >
Encoding:
Text File  |  1991-09-25  |  1.0 KB  |  37 lines

  1. ;;; -*-Scheme-*-
  2.  
  3. (define-widget-type 'porthole "Porthole.h")
  4.  
  5. (prolog
  6.  
  7. "static SYMDESCR Panner_Syms[] = {
  8.     { \"slider-x\",       XawPRSliderX },
  9.     { \"slider-y\",       XawPRSliderY },
  10.     { \"slider-width\",   XawPRSliderWidth },
  11.     { \"slider-height\",  XawPRSliderHeight },
  12.     { \"canvas-width\",   XawPRCanvasWidth },
  13.     { \"canvas-height\",  XawPRCanvasHeight },
  14.     { 0, 0 }
  15. };")
  16.  
  17. (define-widget-class 'porthole 'portholeWidgetClass)
  18.  
  19. (define-callback 'porthole 'reportCallback #t)
  20.  
  21. (c->scheme 'porthole-reportCallback
  22. "   Object ret = Null;
  23.     XawPannerReport *p = (XawPannerReport *)x;
  24.     GC_Node;
  25.  
  26.     GC_Link (ret);
  27.     ret = Cons (Make_Integer (p->canvas_height), ret);
  28.     ret = Cons (Make_Integer (p->canvas_width), ret);
  29.     ret = Cons (Make_Integer (p->slider_height), ret);
  30.     ret = Cons (Make_Integer (p->slider_width), ret);
  31.     ret = Cons (Make_Integer (p->slider_y), ret);
  32.     ret = Cons (Make_Integer (p->slider_x), ret);
  33.     ret = Cons (Bits_To_Symbols ((unsigned long)p->changed, 1, Panner_Syms),
  34.     ret);
  35.     GC_Unlink;
  36.     return ret;")
  37.